[tool.poetry]
name = "backend"
version = "0.1.0"
description = "Cohere Application Toolkit"
authors = ["Cohere"]
license = "MIT"
readme = "README.md"

[tool.poetry.dependencies]
python = "~3.11"
fastapi = "^0.109.2"
uvicorn = {extras = ["standard"], version = "^0.27.1"}
sqlalchemy = "^2.0.26"
pydantic = "^2.6.4"
langchain = "0.1.16"
wikipedia = "^1.4.0"
llama-index = "^0.10.11"
python-dotenv = "^1.0.1"
pytest-dotenv = "^0.5.2"
alembic = "^1.13.1"
psycopg2 = "^2.9.9"
python-multipart = "^0.0.9"
sse-starlette = "^2.0.0"
boto3 = "^1.0.0"
httpx = "^0.27.0"
pytest-env = "^1.1.3"
factory-boy = "^3.3.0"
chromadb = "^0.4.16"
cohere = "^5.4.0"
inquirer = "^3.2.4"
langchain-community = "^0.0.32"
langchain-cohere = "^0.1.1"
langchain-experimental = "^0.0.56"
py-expression-eval = "^0.3.14"
tavily-python = "^0.3.3"
arxiv = "^2.1.0"
xmltodict = "^0.13.0"
authlib = "^1.3.0"
itsdangerous = "^2.2.0"
bcrypt = "^4.1.2"

[tool.poetry.group.dev.dependencies]
pytest = "^7.1.2"
pre-commit = "^2.20.0"
ruff = "^0.0.94"
isort = "^5.12.0"
black = "24.3.0"

[tool.poetry.group.setup.dependencies]
python = "~3.11"
inquirer = "3.2.4"
python-dotenv = "1.0.1"
cohere = "^5.0.2"
sqlalchemy = "^2.0.26"
fastapi = "^0.109.2"
psycopg2 = "^2.9.9"
boto3 = "^1.0.0"
py-expression-eval = "^0.3.14"
langchain = "0.1.16"
langchain-cohere = "^0.1.1"
tavily-python = "^0.3.3"
llama-index = "^0.10.11"

[tool.poetry.group.community.dependencies]
wolframalpha = "^5.0.0"
transformers = "^4.40.1"
torch = "^2.3.0"
llama-cpp-python = "^0.2.67"

[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"

[tool.isort]
profile = "black"